package com.mccken.rapid.core;

/**
 * @program: rapid_gateway
 * @description:
 * @author: mccken
 * @create: 2022-01-03 17:30
 **/
public class Bootstrap {

	public static void main(String[] args) {
		// 1. 加载网关配置信息
		RapidConfig rapidConfig = RapidConfigLoader.getInstance().load(args);

		// 2. 插件插件初始化的工作
		
		// 3. 初始化服务注册管理中心(服务注册管理器)，监听动态配置的增删改
		
		// 4. 启动容器
		RapidContainer rapidContainer = new RapidContainer(rapidConfig);
		rapidContainer.start();
		
		Runtime.getRuntime().addShutdownHook(new Thread(() -> {
			rapidContainer.shutdown();
		}));
	}
}
